解题思路:
第一处:在函数fun体中,a是一个整型数组,所以形参a应定义为指针型整数变量。
第二处:变量书写错误,aa应为a。
***************************************************
请编写一个函数fun, 它的功能是: 计算并输出给定整数n的所有因子(不包括1与n自身)之和。规定n的值不大于1000。
例如,在主函数中从键盘给n输入的值为856, 则输出为:sum=763。
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
给定源程序:
#include
int fun(int n)
{
}
main()
{ int n,sum;
printf("Input n: "); scanf("%d",&n);
sum=fun(n);
printf("sum=%d\n",sum);
NONO();
}
解题思路:
本题是考察考生怎样利用循环来求出一个数n的所有(除1和自身外)因子i并求出它们的和s作为函数值返回。判断因子的条件是:n % i == 0,(i是大于1且小于n中所有的正整数)。
参考答案:
int fun(int n)
{
int s = 0, i ;
for(i = 2 ; i < n ; i++) if(n % i == 0) s +=i ;
return s ;
}
※※※※※※※※※※※※※※※※※※※※※※※